package com.scn.base.service;

import java.util.List;

import com.scn.base.domain.MenuVO;
import com.scn.base.page.TreeNode;
/**
 * 系统菜单服务类
 *      
 *     
 * @author GX       
 * @version 1.0     
 * @created May 5, 2011 3:27:19 AM
 */
public interface ISysMenuService {
	/**
	 * 查询所有菜单项
	 * 描述   
	 * @return
	 */
	 List selectMenu();
	/**
	 * 根据角色ID查询所有菜单和其功能项
	 * 描述   
	 * @param srid
	 * @return
	 */
	 List selectRolePowerList(int srid);
	/**
	 * 根据角色ID查询角色菜单项
	 * 描述   
	 * @param srid
	 * @return
	 */
	 List selectRolePower(int srid);
	
	/**
	 * 功能描述：菜单清单
	 * @param 菜单树
	 * @return 菜单树
	 */
	TreeNode selectMenuList();
	
	/**
	 * 功能描述：检查用户名是否存在
	 * @param smname 中文名称
	 * @return 0 不存在、1 存在、2 菜单名为空
	 */
	int checkMenuName(String smname);
	
	/**
	 * 功能描述：保存菜单项
	 * @param menu  菜单项
	 */
	void saveMenu(MenuVO menu);
	
	/**
	 * 功能描述：用于Dwr异步调用现实菜单option选项
	 * @return 前台现实select的option集合
	 */
	public List<String> selectParentMenuForOption();
}
